import time
from public.action import *
from public.business import *
from public.testData import *
from public.tools import *
testCase="DBshop002_余额支付"
#打开网页
firefox=openBrowser(url)

#登录会员
DBshopLogin(firefox,userName,password)
#搜索“小米”手机
firefox.find_element_by_xpath('//input[@name="keywords"]').send_keys('小米')
#点击小米手机的图片
firefox.find_element_by_xpath('//input[@type="submit"]').click()
firefox.find_element_by_xpath('//a[@href="/dbshop/goods/8/2"]').click()
switchWindow(firefox,2)
firefox.find_element_by_id('add_cart_submit').click()
time.sleep(2)
firefox.find_element_by_link_text('去购物车结算').click()
firefox.find_element_by_link_text('去结算').click()
firefox.find_element_by_xpath('//input[@value="下一步"]').click()
firefox.find_element_by_xpath('//input[@value="yezf"]').click()
firefox.find_element_by_xpath('//input[@value="确认订单"]').click()

#使用变量orderNO存储订单编号
orderNO=firefox.find_element_by_xpath('(//font[@color="color:#ED145B"])[2]').text
rootPath=get_pro_rootpath()
writeFile(rootPath+'\public\order1.txt',orderNO) # 将订单编号写入到文件中

firefox.find_element_by_xpath('//input[@value="马上去支付"]').click()
firefox.find_element_by_xpath('//a[@class="btn btn-primary"]').click()

firefox.get(urlAdmin)
#调用自定义函数进行后台的登录
DBshopLoginAdmin(firefox)
# 8.进入销售管理订单管理,找到刚才前台提交的订单,点击"编辑查看",再点击付款操作按钮
#调用后台的菜单操作函数
DBshopEnterMenu2(firefox,'销售管理','订单管理')
#搜索出订单
firefox.find_element_by_name('order_sn').send_keys(orderNO)#输入订单编号，orderNO里面就是刚才下单的时候存储的订单编号
firefox.find_element_by_xpath('//button').click()#点击搜索按钮
firefox.find_element_by_link_text('编辑查看').click()

# #搜索出订单
# firefox.find_element_by_name('order_sn').send_keys(orderNO)#输入订单编号，orderNO里面就是刚才下单的时候存储的订单编号
# firefox.find_element_by_xpath('//button').click()#点击搜索按钮
# firefox.find_element_by_link_text('编辑查看').click()

firefox.find_element_by_link_text('发货操作').click()
firefox.find_element_by_xpath('//button').click()



# 11.到dbshop前台我的订单中完成收货
firefox.get(url)
#点击我的订单
firefox.find_element_by_link_text('我的订单').click()
#点击已发货
firefox.find_element_by_partial_link_text('已发货').click()#点击已发货页签
firefox.find_element_by_name('search_order_sn').send_keys(orderNO)#输入订单编号
firefox.find_element_by_xpath('//button').click() #点击搜索按钮
#点击确认收货
firefox.find_element_by_xpath('//button[text()="确认收货"]').click()#点击确认收货按钮
firefox.find_element_by_xpath('//button[@type="submit"]').click()
firefox.switch_to.alert.accept() #处理js弹框，点击确定按钮
# 12.到dbshop前台查看我的订单"交易完成"中,检查上面的订单状态
#点击交易完成
firefox.find_element_by_partial_link_text('交易完成').click()#点击交易完成页签
firefox.find_element_by_name('search_order_sn').send_keys(orderNO) #输入订单编号
firefox.find_element_by_xpath('//button').click() #点击搜索按钮
#断言
try:
    firefox.find_element_by_link_text(orderNO)
    writeLog("%s 测试通过"%testCase)
except:
    writeLog("%s 测试失败" % testCase)
    getPhoto(firefox)
firefox.quit() #quit()函数有2个作用 1.关闭所有页面 2.关闭浏览器对象 quit()函数建议放到脚本的最后





